import { request } from '@/utils/request';

const Api = {
  Login: 'user/login',
  Register: 'user/register',
  Logout: 'user/logout',
  updatePassword: 'user/updatePassword',
  updateUsername: 'user/updateUsername',
  updateAccount: 'user/updateAccount',
  getInfo: 'user/getCurrentLoginUserInfo',
};

/**
 * 登录
 * @param data
 * @returns
 */
export function login(data: Record<string, unknown>) {
  return request.post({
    url: Api.Login,
    data,
  });
}

/**
 * 注册
 * @param data
 * @returns
 */
export function register(data: Record<string, unknown>) {
  return request.post({
    url: Api.Register,
    data,
  });
}

/**
 * 退出
 * @returns
 */
export function logout() {
  return request.put({
    url: Api.Logout,
  });
}

/**
 * 更新密码
 * @param data
 * @returns
 */
export function updatePassword(data: string) {
  return request.put({
    url: Api.updatePassword,
    headers: {
      'Content-Type': 'text/plain',
    },
    data,
  });
}

/**
 * 更新用户名
 * @param data
 * @returns
 */
export function updateUsername(data: string) {
  return request.put({
    url: Api.updateUsername,
    headers: {
      'Content-Type': 'text/plain',
    },
    data,
  });
}

/**
 * 更新账户信息
 * @param data
 * @returns
 */
export function updateAccount(data: string) {
  return request.put({
    url: Api.updateAccount,
    headers: {
      'Content-Type': 'text/plain',
    },
    data,
  });
}

/**
 * 获取用户信息
 * @returns
 */
export function getInfo() {
  return request.get({
    url: Api.getInfo,
  });
}
